﻿package com.google.code.p.ivans.patternsentities;

import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.GregorianCalendar;

import com.google.code.p.ivans.entities.Order;

public class AddOrderHandler extends Handler {

	@Override
	public void handle() {
		//logger.DEBUG
		if(Main.logger.isDebugEnabled()){
			Main.logger.debug("[DEBUG]Главное меню -> Заказы -> Создать - 1");
		}
		
		int table; 
		String dishes;
		try
		{
			System.out.println(">>Введите номер столика:");
			table = Main.scanner.nextInt();
			
			System.out.println(">>Введите блюда через запятую:");
			dishes = Main.bufread.readLine();			
			
			String[] dishesId = dishes.split(",");
			
			ArrayList<Integer>  dishesTemp = new ArrayList<Integer>();
			
			for(String dish : dishesId) {				
				try {
					dishesTemp.add(Integer.valueOf(dish));
				} catch(Exception ignore) {
													
				}									
			}	
			
			Order order = new Order(table, dishesTemp, new GregorianCalendar());			
			
			Main.orderSI.addOrder(order);				
			
			//logger.INFO
			if(Main.logger.isInfoEnabled()) {
				Main.logger.info("[INFO]Добавлен заказ:\n" + order.toString());
			}
		}
		 catch (SQLException e) {	
			 Main.logger.error("[ERROR]SQLException. Причина - " + e.getMessage());
			e.printStackTrace();
		} catch (IOException e) {
			Main.logger.error("[ERROR]IOException. Причина - " + e.getMessage());
			e.printStackTrace();
		}
		
	}

}
